package org.grid.model.calculate;

import java.util.ArrayList;
import java.util.List;

/**
 * Realiza um calculo simples
 * @author wellington
 */
public class SimpleCalculatorOperation implements CalculatorOperation {
/**
 * Obtem a coluna do tempo ( a primeira) e multiplica cada valor,
 * somando todos depois
 * @param lines os valores a serem calculados
 * @return o resultado
 */
    public List<Double> calculate(List<String[]> lines) {
        List<Double> res = new ArrayList<Double>(lines.size());
        for (int i = 0; i < lines.size(); i++) {
            String[] line = lines.get(i);
            if (line == null) {
                break;
            }
            if (line.length == 0) {
                continue;
            }
            double time = Double.parseDouble(line[0]);
            double partRes = 0;
            for (int j = 1; j < line.length; j++) {
                partRes += (Double.parseDouble(line[j]) * time);
            }
            res.add(partRes);
        }
        return res;
    }

}
